FILESOFT SESSION CAPACITY — 0.1.0
Editable single-user teaching example • 26 October 2026

Open Filesoft Session Capacity_0.1.0.fmp12 in FileMaker Pro on macOS.
Click Load examples, then use the Participant and Session pop-up menus.
The menus display readable names and store IDs. The two Alex Morgans are
separate people. This independent example starts with no saved registrations.

FIXED EXAMPLES
S01 — FileMaker foundations: capacity 2.
S02 — Reporting workshop: capacity 0 (closed, never unlimited).
Limits are fixed in Sessions::Capacity for this focused lesson; there is no
capacity editor. Capacity, Registered and Seats available describe only the
selected session. The saved registration total includes cancelled records
across both sessions and is deliberately shown separately.

TRY THE LAST SEAT AND RESTORE
1. Load examples. Choose S01 and P01 (Alex Morgan, Operations); Register.
2. Choose P02 (Alex Morgan, Finance); Register. Expect 2 registered, 0 seats.
   Note P02's registration ID. Click Register again: same ID, no extra seat.
3. Choose P03 (Sam Rivera); Register. Expect Session full, no registration ID
   for P03 and still only two saved registrations.
4. Choose P02; Cancel registration. Expect Cancelled, same ID, one seat free.
   Cancel again: still only one free seat.
5. Choose P03; Register. Expect two registered, zero seats, three saved records.
6. Choose P02; Restore registration. Expect Session full; P02 stays Cancelled
   with its original ID. Register must also keep P02 cancelled.
7. Choose P03; Cancel registration. Choose P02; Restore registration.
   Expect Registered, original ID, two registered and zero available seats.
8. Restore P02 again: no new record or seat. Choose S02 and any participant;
   Register must explain zero capacity, leaving S01 and all saved records alone.
9. Close normally and reopen. Load examples if necessary, reselect the pairs,
   and check the saved statuses and IDs. Load examples preserves registrations.

Clear choices clears selections only. It never removes saved registrations.
To repeat from an empty start, extract another copy from the original ZIP after
closing the current file. Keep your tested copy separately if you want to retain
its records or make follow-up changes.

HOW IT IS ORGANIZED
Participants, Sessions and Registrations hold the examples. Workspace supports
the interface. The stored unique PairKey uses participant ID plus session ID;
RegistrationID is a separate UUID. Only Registered records consume capacity.
Cancel and Restore change the same saved record's status and change timestamp,
retaining its keys and creation timestamp.

Register and Restore call the shared hidden Check session capacity script after
checking for an existing-status no-op and before any durable change. It validates
the session and limit, counts Registered rows, rejects invalid stored statuses,
and refuses a new seat at capacity. It does not write, lock records or change
layout context. Repeated Register for an already registered pair returns the
existing record, including when the session is full. A cancelled pair requires
explicit Restore. Cancellation derives availability from saved status; it does
not blindly decrement a separate counter.

The defensive capacity guard accepts only whole-number digit text from 0 to 999.
The supplied interface exposes only fixed limits 2 and 0. Invalid limits are
an authoring/adaptation concern, not an editable exercise on this screen.
Scripts and schema remain inspectable with Full Access. Existing UI/controller
folders are retained from the accepted registration example; Check session
capacity is an additional hidden script.

SCOPE AND COMPATIBILITY
Independent single-user desktop teaching file, not an update to Session Desk.
No waitlist, automatic promotion, payments, email, online booking or analytics.
No plug-ins or external connections. This pattern does not establish safe
concurrent registration on a hosted file. A hosted adaptation requires a
separate locking/recount design and actual concurrent-client tests.

Owner screenshots on macOS show registration, a full-session refusal,
cancellation freeing a seat, another participant taking it, a blocked restore,
successful restoration while space exists, and zero-capacity refusal. These
screenshots do not establish minimum-version, other-platform, concurrent-client
or normal close/reopen testing for this file. Structural, consistency and
package checks were also completed; these do not execute FileMaker scripts.
Transaction steps require FileMaker Pro 19.6.1 or later. FileMaker Pro is not
included. Minimum-version, Windows, Go, WebDirect and resizing behavior have not
been tested. Use your current FileMaker Pro on macOS for this teaching example.
The screen retains its original LOCAL REVIEW 0.1.0 label.

This download starts empty, matching the original review archive. Your own
saved walkthrough copy is separate. Close it normally before making backups.
Article: https://filesofttools.com/filemaker-session-capacity.html
